In a conventional method of controlling disk drives, as described in Japanese Patent Laid-Open No. 64-019456, each magnetic disk drive is provided with an identification (ID) code setting switch. This ID code setting switch comprises, for example, a DIP (dual inline package) switch that can set a value in bits as a binary code. A central processing unit (CPU) of the disk device controls the magnetic disk drive according to the ID code set with the ID code setting switch.
In a conventional method, there is also a disk enclosure device for a disk array configured to control a disk with use of two controllers configured with redundancy. FIG. 1 shows a block diagram of such a disk enclosure device 10a. Hereunder, the disk enclosure device will be described with reference to FIG. 1.
The conventional disk enclosure device 10a is configured to control disk array 3 (a plurality of disk are plugged into the backboard of a disk array apparatus 3) with use of two adapter cards 1a, 2a configured with redundancy. Adapter card 1a includes an ID code setting switch 4, a microprocessor unit (MPU) 5a, and a single drive transistor or a plurality of drive transistors for a bus (hereafter, named as transistor 6). Similarly, adapter card 2a includes an ID code setting switch 14, MPU 15a, and a single drive transistor or a plurality of drive transistors for a bus (hereafter, named as transistor 16). The disk array 3 includes a plurality of hard disk drives (HDDs) 70 . . . 84, plugged into the backboard. The ID code of the disk enclosure device 10a is set with both of the ID code setting switches 4, 14.
However, the conventional disk enclosure device 10a has been confronted with the following problems.
First the output of the ID setting signal 53, 63 cannot be stopped even when the setting is wrong in either of the ID code setting switches 4, 14. For example, in case that “1” is set in the output of transistor 6 of adapter card 1a and “0” is set in the output of the transistor 16 of adapter card 2a, “0” overwrites “1”, so that “0” comes to be set as the ID code of HDDs 70 . . . 84.
The second problem is that the output of the ID setting signal 53, 63 cannot be stopped even when a fault occurs in a part of the disk enclosure device 10a. For example, in case that “0” is output from transistor 6 due to a fault in a part of the disk enclosure device 10a, while the output of transistor 6 of adapter card 1a is set so as to output “1”, “0” comes to be set as the ID code of HDDs 70 . . . 84, even when “1” is set in the output of the transistor 16 of adapter card 2a. 
Therefore, a need exists to be able to detect errors in ID codes and ID code circuit components in disk enclosure devices configured for redundancy.